﻿using System;
using Character;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;

// Token: 0x020001F4 RID: 500
public class FaceCustomEdit : MonoBehaviour
{
	// Token: 0x06000D6C RID: 3436 RVA: 0x000511B0 File Offset: 0x0004F3B0
	public void Setup(Human human, EditEquipShow equipShow)
	{
		this.human = human;
		this.equipShow = equipShow;
		this.CustomHighlightTexPath = ((human.sex != SEX.FEMALE) ? FaceCustomEdit.CustomHighlightTexPath_M : FaceCustomEdit.CustomHighlightTexPath_F);
		human.head.CreateCustomHighlightMaterial();
		this.customMatAlpha = human.head.CustomHighlightMat_Skin.color.a;
		Color color = human.head.CustomHighlightMat_Skin.color;
		color.a = 0f;
		human.head.CustomHighlightMat_Skin.color = color;
		human.head.CustomHighlightMat_Eye_L.color = color;
		human.head.CustomHighlightMat_Eye_R.color = color;
		human.head.CustomHighlightMat_Eyebrow.color = color;
		this.sliders = new InputSliderUI[FaceCustomEdit.datas.Length];
		for (int i = 0; i < FaceCustomEdit.datas.Length; i++)
		{
			InputSliderUI inputSliderUI = this.editMode.CreateInputSliderUI(this.tabMains[(int)FaceCustomEdit.datas[i].type], FaceCustomEdit.datas[i].name, 0f, 100f, true, 50f, null);
			this.sliders[i] = inputSliderUI;
			EventTrigger eventTrigger = inputSliderUI.GetEventTrigger();
			int id = FaceCustomEdit.datas[i].id;
			EventTrigger.Entry entry = new EventTrigger.Entry();
			entry.eventID = EventTriggerType.PointerEnter;
			entry.callback.AddListener(delegate(BaseEventData data)
			{
				this.PointerEnter(id);
			});
			eventTrigger.triggers.Add(entry);
			EventTrigger.Entry entry2 = new EventTrigger.Entry();
			entry2.eventID = EventTriggerType.PointerExit;
			entry2.callback.AddListener(delegate(BaseEventData data)
			{
				this.PointerExit(id);
			});
			eventTrigger.triggers.Add(entry2);
		}
		for (int j = 0; j < this.tabMains.Length; j++)
		{
			this.tabMains[j].gameObject.SetActive(false);
		}
		this.editMode.CreateSpace(this.tabMains[0]);
		this.selSets_FaceType = this.editMode.CreateItemSelectUISets(this.tabMains[0], "輪郭", this.editMode.thumnbs_faceType, new UnityAction<CustomSelectSet>(this.OnChangeFaceType));
		this.editMode.CreateSpace(this.tabMains[0]);
		this.selSets_SkinType = this.editMode.CreateItemSelectUISets(this.tabMains[0], "肌", this.editMode.thumnbs_faceSkin, new UnityAction<CustomSelectSet>(this.OnChangeFaceSkin));
		this.selSets_BumpType = this.editMode.CreateItemSelectUISets(this.tabMains[0], "シワ", this.editMode.thumnbs_faceDetail, new UnityAction<CustomSelectSet>(this.OnChangeFaceBumpType));
		this.bumpRate = this.editMode.CreateInputSliderUI(this.tabMains[0], "シワの深さ", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeFaceBumpRate));
		this.syncEyeSwitch = this.editMode.CreateSwitchUI(this.tabMains[5], "両目を統一する", true, new UnityAction<bool>(this.OnSyncEyeSwitch));
		this.editMode.CreateLabel(this.tabMains[5], "白目");
		this.colorChange_ScleraL = this.editMode.CreateColorChangeButton(this.tabMains[5], "左の色", Color.white, false, new Action<Color>(this.OnChangeEyeSclera_L));
		this.colorChange_ScleraR = this.editMode.CreateColorChangeButton(this.tabMains[5], "右の色", Color.white, false, new Action<Color>(this.OnChangeEyeSclera_R));
		this.editMode.CreateLabel(this.tabMains[5], "瞳");
		this.selSets_EyeL = this.editMode.CreateItemSelectUISets(this.tabMains[5], "左の瞳", this.editMode.thumnbs_eye, new UnityAction<CustomSelectSet>(this.OnChangeEyeID_L));
		this.colorChange_IrisL = this.editMode.CreateColorChangeButton(this.tabMains[5], "左の色", Color.white, false, new Action<Color>(this.OnChangeEyeIris_L));
		this.pupilL = this.editMode.CreateInputSliderUI(this.tabMains[5], "左の瞳孔の開き", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeEyePupil_L));
		this.eyeEmissiveL = this.editMode.CreateInputSliderUI(this.tabMains[5], "左の明るさ補正", 0f, 100f, true, 50f, new UnityAction<float>(this.OnChangeEyeEmissive_L));
		this.editMode.CreateSpace(this.tabMains[5]);
		this.selSets_EyeR = this.editMode.CreateItemSelectUISets(this.tabMains[5], "右の瞳", this.editMode.thumnbs_eye, new UnityAction<CustomSelectSet>(this.OnChangeEyeID_R));
		this.colorChange_IrisR = this.editMode.CreateColorChangeButton(this.tabMains[5], "右の色", Color.white, false, new Action<Color>(this.OnChangeEyeIris_R));
		this.pupilR = this.editMode.CreateInputSliderUI(this.tabMains[5], "右の瞳孔の開き", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeEyePupil_R));
		this.eyeEmissiveR = this.editMode.CreateInputSliderUI(this.tabMains[5], "右の明るさ補正", 0f, 100f, true, 50f, new UnityAction<float>(this.OnChangeEyeEmissive_R));
		this.editMode.CreateLabel(this.tabMains[5], "ハイライト");
		this.selSets_EyeHighlight = this.editMode.CreateItemSelectUISets(this.tabMains[5], "ハイライト", this.editMode.thumnbs_eyehighlight, new UnityAction<CustomSelectSet>(this.OnChangeEyeHighlight));
		this.colorChange_EyeHighlight = this.editMode.CreateColorChangeButton(this.tabMains[5], "色", Color.white, true, new Action<Color>(this.OnChangeEyeHighlightColor));
		this.metallic_EyeHighlight = this.editMode.CreateInputSliderUI(this.tabMains[5], "ツヤの強さ", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeMetallic_EyeHighlightL));
		this.smooth_EyeHighlight = this.editMode.CreateInputSliderUI(this.tabMains[5], "ツヤの質感", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeSmooth_EyeHighlight));
		this.editMode.CreateLabel(this.tabMains[2], "タイプ");
		this.selSets_Eyebrow = this.editMode.CreateItemSelectUISets(this.tabMains[2], "まゆげ", this.editMode.thumnbs_eyebrow, new UnityAction<CustomSelectSet>(this.OnChangeEyebrow));
		this.editMode.CreateLabel(this.tabMains[2], "色");
		this.colorChange_Eyebrow = this.editMode.CreateColorChangeButton(this.tabMains[2], "色", Color.white, true, new Action<Color>(this.OnChangeEyebrowColor));
		this.metallic_Eyebrow = this.editMode.CreateInputSliderUI(this.tabMains[2], "ツヤの強さ", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeMetallic_Eyebrow));
		this.smooth_Eyebrow = this.editMode.CreateInputSliderUI(this.tabMains[2], "ツヤの質感", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeSmooth_Eyebrow));
		this.selSets_Eyelash = this.editMode.CreateItemSelectUISets(this.tabMains[3], "まつげ", this.editMode.thumnbs_eyelash, new UnityAction<CustomSelectSet>(this.OnChangeEyelash));
		this.colorChange_Eyelash = this.editMode.CreateColorChangeButton(this.tabMains[3], "色", Color.white, true, new Action<Color>(this.OnChangeEyelashColor));
		this.metallic_Eyelash = this.editMode.CreateInputSliderUI(this.tabMains[3], "ツヤの強さ", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeMetallic_Eyelash));
		this.smooth_Eyelash = this.editMode.CreateInputSliderUI(this.tabMains[3], "ツヤの質感", 0f, 100f, false, 0f, new UnityAction<float>(this.OnChangeSmooth_Eyelash));
		this.selSets_Mole = this.editMode.CreateItemSelectUISets(this.tabMains[10], "ホクロ", this.editMode.thumnbs_mole, new UnityAction<CustomSelectSet>(this.OnChangeMole));
		this.colorChange_Mole = this.editMode.CreateColorChangeButton(this.tabMains[10], "色", Color.white, true, new Action<Color>(this.OnChangeMoleColor));
		this.editMode.CreateLabel(this.tabMains[11], "アイシャドウ");
		this.selSets_EyeShadow = this.editMode.CreateItemSelectUISets(this.tabMains[11], "アイシャドウ", this.editMode.thumnbs_eyeshadow, new UnityAction<CustomSelectSet>(this.OnChangeEyeShadow));
		this.colorChange_EyeShadow = this.editMode.CreateColorChangeButton(this.tabMains[11], "色", Color.white, true, new Action<Color>(this.OnChangeEyeShadowColor));
		this.editMode.CreateLabel(this.tabMains[11], "チーク");
		this.selSets_Cheek = this.editMode.CreateItemSelectUISets(this.tabMains[11], "チーク", this.editMode.thumnbs_cheek, new UnityAction<CustomSelectSet>(this.OnChangeCheek));
		this.colorChange_Cheek = this.editMode.CreateColorChangeButton(this.tabMains[11], "色", Color.white, true, new Action<Color>(this.OnChangeCheekColor));
		this.editMode.CreateLabel(this.tabMains[11], "リップ");
		this.selSets_Lip = this.editMode.CreateItemSelectUISets(this.tabMains[11], "リップ", this.editMode.thumnbs_lip, new UnityAction<CustomSelectSet>(this.OnChangeLip));
		this.colorChange_Lip = this.editMode.CreateColorChangeButton(this.tabMains[11], "色", Color.white, true, new Action<Color>(this.OnChangeLipColor));
		this.selSets_Tattoo = this.editMode.CreateItemSelectUISets(this.tabMains[12], "タトゥー", this.editMode.thumnbs_faceTattoo, new UnityAction<CustomSelectSet>(this.OnChangeTattoo));
		this.colorChange_Tattoo = this.editMode.CreateColorChangeButton(this.tabMains[12], "色", Color.white, true, new Action<Color>(this.OnChangeTattooColor));
		this.selSets_Beard = this.editMode.CreateItemSelectUISets(this.tabMains[13], "髭", this.editMode.thumnbs_beard, new UnityAction<CustomSelectSet>(this.OnChangeBeard));
		this.colorChange_Beard = this.editMode.CreateColorChangeButton(this.tabMains[13], "色", Color.white, true, new Action<Color>(this.OnChangeBeardColor));
		this.onCursorNo = -1;
		this.highlightNo = -1;
		this.showHighlight = false;
		bool flag = human.sex == SEX.FEMALE;
		this.selSets_EyeHighlight.toggle.gameObject.SetActive(flag);
		this.toggles[3].gameObject.SetActive(flag);
		this.toggles[10].gameObject.SetActive(flag);
		this.toggles[11].gameObject.SetActive(flag);
		this.toggles[13].gameObject.SetActive(!flag);
		this.LoadedHuman();
		this.colorCopyToggle.action.AddListener(new UnityAction<bool>(this.OnToggleButton_ColorCopyHelper));
		this.colorCopyHelper.moveable.AddOnChange(new UnityAction<MoveableUI.STATE>(this.OnChangeColorCopyHelperMoveableState));
	}

	// Token: 0x06000D6D RID: 3437 RVA: 0x00051D88 File Offset: 0x0004FF88
	private void OnEnable()
	{
		if (this.equipShow != null)
		{
			this.equipShow.SetAuto(EditEquipShow.WEARSHOW.ALL);
		}
		this.colorCopyToggle.ChangeValue(this.colorCopyHelper.gameObject.activeSelf, false);
	}

	// Token: 0x06000D6E RID: 3438 RVA: 0x00051DC4 File Offset: 0x0004FFC4
	private void Update()
	{
		this.toggles[8].Interactable = !this.human.head.MouthReset;
		this.toggles[9].Interactable = !this.human.head.MouthReset;
		this.toggles[7].Interactable = !this.human.Gag;
		if (this.human.head.MouthReset)
		{
			this.toggles[8].Value = false;
			this.toggles[9].Value = false;
		}
		if (this.human.Gag)
		{
			this.toggles[7].Value = false;
		}
		int num = -1;
		for (int i = 0; i < this.toggles.Length; i++)
		{
			if (this.toggles[i].Value)
			{
				num = i;
			}
			this.tabMains[i].gameObject.SetActive(this.toggles[i].Value);
		}
		if (num != this.nowTab)
		{
			this.ChangeTab(num);
		}
		for (int j = 0; j < this.sliders.Length; j++)
		{
			if (FaceCustomEdit.datas[j].type == (FaceCustomEdit.TAB)this.nowTab)
			{
				float value = this.sliders[j].Value * 0.01f;
				this.human.head.SetShape(FaceCustomEdit.datas[j].id, value);
			}
		}
		bool reset = this.human.head.MouthReset || this.human.Gag;
		this.human.head.ResetMouth(reset);
		this.UpdateHighlight();
	}

	// Token: 0x06000D6F RID: 3439 RVA: 0x00051F7C File Offset: 0x0005017C
	public void LoadedHuman()
	{
		this.invoke = false;
		HeadParameter head = this.human.customParam.head;
		for (int i = 0; i < this.sliders.Length; i++)
		{
			if (FaceCustomEdit.datas[i].type == (FaceCustomEdit.TAB)this.nowTab)
			{
				this.sliders[i].Value = this.human.head.GetShape(FaceCustomEdit.datas[i].id) * 100f;
			}
		}
		this.selSets_FaceType.SetSelectedFromDataID(head.headID);
		this.selSets_SkinType.SetSelectedFromDataID(head.faceTexID);
		this.selSets_BumpType.SetSelectedFromDataID(head.detailID);
		this.bumpRate.SetValue(head.detailWeight * 100f);
		bool flag = head.CheckEyeEqual();
		this.syncEyeSwitch.Value = flag;
		this.colorChange_ScleraL.SetColor(head.eyeScleraColorL);
		this.colorChange_ScleraR.SetColor(head.eyeScleraColorR);
		this.selSets_EyeL.SetSelectedFromDataID(head.eyeID_L);
		this.colorChange_IrisL.SetColor(head.eyeIrisColorL);
		this.pupilL.SetValue(head.eyePupilDilationL * 100f);
		this.eyeEmissiveL.SetValue(head.eyeEmissiveL * 100f);
		this.selSets_EyeR.SetSelectedFromDataID(head.eyeID_R);
		this.colorChange_IrisR.SetColor(head.eyeIrisColorR);
		this.pupilR.SetValue(head.eyePupilDilationR * 100f);
		this.eyeEmissiveR.SetValue(head.eyeEmissiveR * 100f);
		this.ChangeEyeUI(flag);
		this.selSets_EyeHighlight.SetSelectedFromDataID(head.eyeHighlightTexID);
		this.metallic_EyeHighlight.SetValue(head.eyeHighlightColor.specular1 * 100f);
		this.smooth_EyeHighlight.SetValue(head.eyeHighlightColor.smooth1 * 100f);
		this.colorChange_EyeHighlight.SetColor(head.eyeHighlightColor.mainColor1);
		bool flag2 = this.human.head.IsGlossEyeHighlight();
		this.metallic_EyeHighlight.gameObject.SetActive(flag2);
		this.smooth_EyeHighlight.gameObject.SetActive(flag2);
		this.colorChange_EyeHighlight.gameObject.SetActive(!flag2);
		this.selSets_Eyebrow.SetSelectedFromDataID(head.eyeBrowID);
		this.colorChange_Eyebrow.SetColor(head.eyeBrowColor.mainColor1);
		this.metallic_Eyebrow.SetValue(head.eyeBrowColor.specular1 * 100f);
		this.smooth_Eyebrow.SetValue(head.eyeBrowColor.smooth1 * 100f);
		this.selSets_Eyelash.SetSelectedFromDataID(head.eyeLashID);
		this.colorChange_Eyelash.SetColor(head.eyeLashColor.mainColor1);
		this.metallic_Eyelash.SetValue(head.eyeLashColor.specular1 * 100f);
		this.smooth_Eyelash.SetValue(head.eyeLashColor.smooth1 * 100f);
		this.selSets_Mole.SetSelectedFromDataID(head.moleTexID);
		this.colorChange_Mole.SetColor(head.moleColor);
		this.selSets_EyeShadow.SetSelectedFromDataID(head.eyeshadowTexID);
		this.colorChange_EyeShadow.SetColor(head.eyeshadowColor);
		this.selSets_Cheek.SetSelectedFromDataID(head.cheekTexID);
		this.colorChange_Cheek.SetColor(head.cheekColor);
		this.selSets_Lip.SetSelectedFromDataID(head.lipTexID);
		this.colorChange_Lip.SetColor(head.lipColor);
		this.selSets_Tattoo.SetSelectedFromDataID(head.tattooID);
		this.colorChange_Tattoo.SetColor(head.tattooColor);
		this.selSets_Beard.SetSelectedFromDataID(head.beardID);
		this.colorChange_Beard.SetColor(head.beardColor);
		this.invoke = true;
	}

	// Token: 0x06000D70 RID: 3440 RVA: 0x00052360 File Offset: 0x00050560
	public void ChangedColor()
	{
		this.invoke = false;
		HeadParameter head = this.human.customParam.head;
		this.colorChange_Eyebrow.SetColor(head.eyeBrowColor.mainColor1);
		this.colorChange_Eyelash.SetColor(head.eyeLashColor.mainColor1);
		this.colorChange_Beard.SetColor(head.beardColor);
		this.invoke = true;
	}

	// Token: 0x06000D71 RID: 3441 RVA: 0x000523CC File Offset: 0x000505CC
	private void ChangeTab(int tab)
	{
		this.nowTab = tab;
		SystemSE.Play(SystemSE.SE.CHOICE);
		if (this.nowTab == -1)
		{
			return;
		}
		for (int i = 0; i < this.sliders.Length; i++)
		{
			if (FaceCustomEdit.datas[i].type == (FaceCustomEdit.TAB)this.nowTab)
			{
				this.sliders[i].Value = this.human.head.GetShape(FaceCustomEdit.datas[i].id) * 100f;
			}
		}
	}

	// Token: 0x06000D72 RID: 3442 RVA: 0x00052454 File Offset: 0x00050654
	private void PointerEnter(int no)
	{
		this.onCursorNo = no;
	}

	// Token: 0x06000D73 RID: 3443 RVA: 0x00052460 File Offset: 0x00050660
	private void PointerExit(int no)
	{
		if (this.onCursorNo == no)
		{
			this.onCursorNo = -1;
		}
	}

	// Token: 0x06000D74 RID: 3444 RVA: 0x00052478 File Offset: 0x00050678
	private void ChangeCustomPart(int newNo)
	{
		if (this.showHighlight && ConfigData.showCustomHighlight)
		{
			if (newNo != this.highlightNo)
			{
				this.highlightNo = newNo;
				if (newNo != -1)
				{
					Texture texture = this.highlightTex;
					if (FaceCustomEdit.datas[newNo].type == FaceCustomEdit.TAB.EYE)
					{
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Skin, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_L, this.customMatAlpha);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_R, this.customMatAlpha);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eyebrow, 0f);
					}
					else if (FaceCustomEdit.datas[newNo].type == FaceCustomEdit.TAB.EYEBROW)
					{
						this.human.head.CustomHighlightMat_Eyebrow.mainTexture = this.human.head.Rend_eyebrow.material.mainTexture;
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Skin, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_L, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_R, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eyebrow, this.customMatAlpha);
					}
					else
					{
						string path = this.CustomHighlightTexPath + this.highlightNo.ToString("00");
						this.highlightTex = Resources.Load<Texture>(path);
						this.human.head.CustomHighlightMat_Skin.mainTexture = this.highlightTex;
						float alpha = (!this.highlightTex) ? 0f : this.customMatAlpha;
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Skin, alpha);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_L, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_R, 0f);
						FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eyebrow, 0f);
					}
					if (texture != null && texture != this.highlightTex)
					{
						Resources.UnloadAsset(texture);
					}
				}
				else
				{
					FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Skin, 0f);
					FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_L, 0f);
					FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_R, 0f);
					FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eyebrow, 0f);
				}
			}
		}
		else
		{
			FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Skin, 0f);
			FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_L, 0f);
			FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eye_R, 0f);
			FaceCustomEdit.ChangeCustomAlpha(this.human.head.CustomHighlightMat_Eyebrow, 0f);
		}
	}

	// Token: 0x06000D75 RID: 3445 RVA: 0x000527B0 File Offset: 0x000509B0
	private static void ChangeCustomAlpha(Material mat, float alpha)
	{
		Color color = mat.color;
		color.a = alpha;
		mat.color = color;
	}

	// Token: 0x06000D76 RID: 3446 RVA: 0x000527D4 File Offset: 0x000509D4
	private void UpdateHighlight()
	{
		int newNo = this.onCursorNo;
		this.showHighlight = true;
		foreach (InputSliderUI inputSliderUI in this.sliders)
		{
			if (inputSliderUI.IsHandling)
			{
				this.showHighlight = false;
			}
		}
		this.ChangeCustomPart(newNo);
	}

	// Token: 0x06000D77 RID: 3447 RVA: 0x00052828 File Offset: 0x00050A28
	private void OnChangeFaceType(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.headID = set.id;
		this.human.ChangeHead();
	}

	// Token: 0x06000D78 RID: 3448 RVA: 0x0005285C File Offset: 0x00050A5C
	private void OnChangeFaceSkin(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.faceTexID = set.id;
		this.human.head.ChangeSkinMaterial();
	}

	// Token: 0x06000D79 RID: 3449 RVA: 0x00052898 File Offset: 0x00050A98
	private void OnChangeFaceBumpType(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.detailID = set.id;
		this.human.head.RendNormalTexture();
	}

	// Token: 0x06000D7A RID: 3450 RVA: 0x000528D4 File Offset: 0x00050AD4
	private void OnChangeFaceBumpRate(float rate)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.detailWeight = rate * 0.01f;
		this.human.head.RendNormalTexture();
	}

	// Token: 0x06000D7B RID: 3451 RVA: 0x00052910 File Offset: 0x00050B10
	private void OnSyncEyeSwitch(bool sync)
	{
		if (!this.invoke)
		{
			return;
		}
		this.ChangeEyeUI(sync);
	}

	// Token: 0x06000D7C RID: 3452 RVA: 0x00052928 File Offset: 0x00050B28
	private void ChangeEyeUI(bool sync)
	{
		this.colorChange_ScleraR.gameObject.SetActive(!sync);
		this.selSets_EyeR.toggle.gameObject.SetActive(!sync);
		this.colorChange_IrisR.gameObject.SetActive(!sync);
		this.pupilR.gameObject.SetActive(!sync);
		this.eyeEmissiveR.gameObject.SetActive(!sync);
		this.colorChange_ScleraL.SetTitle((!sync) ? "左の色" : "左右の色");
		this.selSets_EyeL.toggle.SetTitle((!sync) ? "左の瞳" : "左右の瞳");
		this.colorChange_IrisL.SetTitle((!sync) ? "左の色" : "左右の色");
		this.pupilL.SetTitle((!sync) ? "左の瞳孔の開き" : "左右の瞳孔の開き");
		this.eyeEmissiveL.SetTitle((!sync) ? "左の明るさ補正" : "左右の明るさ補正");
	}

	// Token: 0x06000D7D RID: 3453 RVA: 0x00052A44 File Offset: 0x00050C44
	private void OnChangeEyeID_L(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeID_L = set.id;
		this.human.head.ChangeEye_L();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.selSets_EyeR.SetSelectedFromDataID(set.id);
			this.human.customParam.head.eyeID_R = set.id;
			this.human.head.ChangeEye_R();
			this.invoke = true;
		}
	}

	// Token: 0x06000D7E RID: 3454 RVA: 0x00052AE4 File Offset: 0x00050CE4
	private void OnChangeEyeSclera_L(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeScleraColorL = color;
		this.human.head.ChangeEyeColor_L();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.colorChange_ScleraR.SetColor(color);
			this.human.customParam.head.eyeScleraColorR = color;
			this.human.head.ChangeEyeColor_R();
			this.invoke = true;
		}
	}

	// Token: 0x06000D7F RID: 3455 RVA: 0x00052B74 File Offset: 0x00050D74
	private void OnChangeEyeIris_L(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeIrisColorL = color;
		this.human.head.ChangeEyeColor_L();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.colorChange_IrisR.SetColor(color);
			this.human.customParam.head.eyeIrisColorR = color;
			this.human.head.ChangeEyeColor_R();
			this.invoke = true;
		}
	}

	// Token: 0x06000D80 RID: 3456 RVA: 0x00052C04 File Offset: 0x00050E04
	private void OnChangeEyePupil_L(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		val *= 0.01f;
		this.human.customParam.head.eyePupilDilationL = val;
		this.human.head.ChangeEyeColor_L();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.pupilR.Value = val;
			this.human.customParam.head.eyePupilDilationR = val;
			this.human.head.ChangeEyeColor_R();
			this.invoke = true;
		}
	}

	// Token: 0x06000D81 RID: 3457 RVA: 0x00052C9C File Offset: 0x00050E9C
	private void OnChangeEyeEmissive_L(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		val *= 0.01f;
		this.human.customParam.head.eyeEmissiveL = val;
		this.human.head.ChangeEyeColor_L();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.eyeEmissiveR.Value = val;
			this.human.customParam.head.eyeEmissiveR = val;
			this.human.head.ChangeEyeColor_R();
			this.invoke = true;
		}
	}

	// Token: 0x06000D82 RID: 3458 RVA: 0x00052D34 File Offset: 0x00050F34
	private void OnChangeEyeID_R(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeID_R = set.id;
		this.human.head.ChangeEye_R();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.selSets_EyeL.SetSelectedFromDataID(set.id);
			this.human.customParam.head.eyeID_L = set.id;
			this.human.head.ChangeEye_L();
			this.invoke = true;
		}
	}

	// Token: 0x06000D83 RID: 3459 RVA: 0x00052DD4 File Offset: 0x00050FD4
	private void OnChangeEyeSclera_R(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeScleraColorR = color;
		this.human.head.ChangeEyeColor_R();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.colorChange_ScleraL.SetColor(color);
			this.human.customParam.head.eyeScleraColorL = color;
			this.human.head.ChangeEyeColor_L();
			this.invoke = true;
		}
	}

	// Token: 0x06000D84 RID: 3460 RVA: 0x00052E64 File Offset: 0x00051064
	private void OnChangeEyeIris_R(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeIrisColorR = color;
		this.human.head.ChangeEyeColor_R();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.colorChange_IrisL.SetColor(color);
			this.human.customParam.head.eyeIrisColorL = color;
			this.human.head.ChangeEyeColor_L();
			this.invoke = true;
		}
	}

	// Token: 0x06000D85 RID: 3461 RVA: 0x00052EF4 File Offset: 0x000510F4
	private void OnChangeEyePupil_R(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		val *= 0.01f;
		this.human.customParam.head.eyePupilDilationR = val;
		this.human.head.ChangeEyeColor_R();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.pupilL.Value = val;
			this.human.customParam.head.eyePupilDilationL = val;
			this.human.head.ChangeEyeColor_L();
			this.invoke = true;
		}
	}

	// Token: 0x06000D86 RID: 3462 RVA: 0x00052F8C File Offset: 0x0005118C
	private void OnChangeEyeEmissive_R(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		val *= 0.01f;
		this.human.customParam.head.eyeEmissiveR = val;
		this.human.head.ChangeEyeColor_R();
		if (this.syncEyeSwitch.Value)
		{
			this.invoke = false;
			this.pupilL.Value = val;
			this.human.customParam.head.eyeEmissiveL = val;
			this.human.head.ChangeEyeColor_L();
			this.invoke = true;
		}
	}

	// Token: 0x06000D87 RID: 3463 RVA: 0x00053024 File Offset: 0x00051224
	private void OnChangeEyeHighlight(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeHighlightTexID = set.id;
		this.human.head.ChangeEyeHighlight();
		this.UI_UpdateHighlight();
	}

	// Token: 0x06000D88 RID: 3464 RVA: 0x00053064 File Offset: 0x00051264
	private void UI_UpdateHighlight()
	{
		bool flag = this.human.head.IsGlossEyeHighlight();
		this.metallic_EyeHighlight.gameObject.SetActive(flag);
		this.smooth_EyeHighlight.gameObject.SetActive(flag);
		this.colorChange_EyeHighlight.gameObject.SetActive(!flag);
	}

	// Token: 0x06000D89 RID: 3465 RVA: 0x000530B8 File Offset: 0x000512B8
	private void OnChangeEyeHighlightColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeHighlightColor.mainColor1 = color;
		this.human.head.ChangeEyeHighlightColor();
	}

	// Token: 0x06000D8A RID: 3466 RVA: 0x000530F4 File Offset: 0x000512F4
	private void OnChangeMetallic_EyeHighlightL(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeHighlightColor.specular1 = val * 0.01f;
		this.human.head.ChangeEyeHighlightColor();
	}

	// Token: 0x06000D8B RID: 3467 RVA: 0x00053134 File Offset: 0x00051334
	private void OnChangeSmooth_EyeHighlight(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeHighlightColor.smooth1 = val * 0.01f;
		this.human.head.ChangeEyeHighlightColor();
	}

	// Token: 0x06000D8C RID: 3468 RVA: 0x00053174 File Offset: 0x00051374
	private void OnChangeEyebrow(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeBrowID = set.id;
		this.human.head.ChangeEyebrow();
	}

	// Token: 0x06000D8D RID: 3469 RVA: 0x000531B0 File Offset: 0x000513B0
	private void OnChangeEyebrowColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeBrowColor.mainColor1 = color;
		this.human.head.ChangeEyebrowColor();
	}

	// Token: 0x06000D8E RID: 3470 RVA: 0x000531EC File Offset: 0x000513EC
	private void OnChangeMetallic_Eyebrow(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeBrowColor.specular1 = val * 0.01f;
		this.human.head.ChangeEyebrowColor();
	}

	// Token: 0x06000D8F RID: 3471 RVA: 0x0005322C File Offset: 0x0005142C
	private void OnChangeSmooth_Eyebrow(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeBrowColor.smooth1 = val * 0.01f;
		this.human.head.ChangeEyebrowColor();
	}

	// Token: 0x06000D90 RID: 3472 RVA: 0x0005326C File Offset: 0x0005146C
	private void OnChangeEyelash(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeLashID = set.id;
		this.human.head.ChangeEyelash();
	}

	// Token: 0x06000D91 RID: 3473 RVA: 0x000532A8 File Offset: 0x000514A8
	private void OnChangeEyelashColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeLashColor.mainColor1 = color;
		this.human.head.ChangeEyelashColor();
	}

	// Token: 0x06000D92 RID: 3474 RVA: 0x000532E4 File Offset: 0x000514E4
	private void OnChangeMetallic_Eyelash(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeLashColor.specular1 = val * 0.01f;
		this.human.head.ChangeEyelashColor();
	}

	// Token: 0x06000D93 RID: 3475 RVA: 0x00053324 File Offset: 0x00051524
	private void OnChangeSmooth_Eyelash(float val)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeLashColor.smooth1 = val * 0.01f;
		this.human.head.ChangeEyelashColor();
	}

	// Token: 0x06000D94 RID: 3476 RVA: 0x00053364 File Offset: 0x00051564
	private void OnChangeMole(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.moleTexID = set.id;
		this.human.head.ChangeMole();
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D95 RID: 3477 RVA: 0x000533B8 File Offset: 0x000515B8
	private void OnChangeMoleColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.moleColor = color;
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D96 RID: 3478 RVA: 0x000533EC File Offset: 0x000515EC
	private void OnChangeEyeShadow(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeshadowTexID = set.id;
		this.human.head.ChangeEyeShadow();
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D97 RID: 3479 RVA: 0x00053440 File Offset: 0x00051640
	private void OnChangeEyeShadowColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.eyeshadowColor = color;
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D98 RID: 3480 RVA: 0x00053474 File Offset: 0x00051674
	private void OnChangeCheek(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.cheekTexID = set.id;
		this.human.head.ChangeCheek();
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D99 RID: 3481 RVA: 0x000534C8 File Offset: 0x000516C8
	private void OnChangeCheekColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.cheekColor = color;
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D9A RID: 3482 RVA: 0x000534FC File Offset: 0x000516FC
	private void OnChangeLip(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.lipTexID = set.id;
		this.human.head.ChangeLip();
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D9B RID: 3483 RVA: 0x00053550 File Offset: 0x00051750
	private void OnChangeLipColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.lipColor = color;
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D9C RID: 3484 RVA: 0x00053584 File Offset: 0x00051784
	private void OnChangeTattoo(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.tattooID = set.id;
		this.human.head.ChangeTattoo();
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D9D RID: 3485 RVA: 0x000535D8 File Offset: 0x000517D8
	private void OnChangeTattooColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.tattooColor = color;
		this.human.head.RendSkinTexture();
	}

	// Token: 0x06000D9E RID: 3486 RVA: 0x0005360C File Offset: 0x0005180C
	private void OnChangeBeard(CustomSelectSet set)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.beardID = set.id;
		this.human.head.ChangeBeard();
	}

	// Token: 0x06000D9F RID: 3487 RVA: 0x00053648 File Offset: 0x00051848
	private void OnChangeBeardColor(Color color)
	{
		if (!this.invoke)
		{
			return;
		}
		this.human.customParam.head.beardColor = color;
		this.human.head.ChangeBeardColor();
	}

	// Token: 0x06000DA0 RID: 3488 RVA: 0x0005367C File Offset: 0x0005187C
	private void OnToggleButton_ColorCopyHelper(bool flag)
	{
		SystemSE.SE se = (!flag) ? SystemSE.SE.CLOSE : SystemSE.SE.OPEN;
		SystemSE.Play(se);
		if (flag)
		{
			this.colorCopyHelper.moveable.Open();
		}
		else
		{
			this.colorCopyHelper.moveable.Close();
		}
	}

	// Token: 0x06000DA1 RID: 3489 RVA: 0x000536C8 File Offset: 0x000518C8
	private void OnChangeColorCopyHelperMoveableState(MoveableUI.STATE state)
	{
		if (state == MoveableUI.STATE.CLOSED)
		{
			this.colorCopyToggle.ChangeValue(false, false);
		}
	}

	// Token: 0x04000DDD RID: 3549
	private static readonly FaceCustomEdit.SliderData[] datas = new FaceCustomEdit.SliderData[]
	{
		new FaceCustomEdit.SliderData(0, "全体横幅", FaceCustomEdit.TAB.GENERAL),
		new FaceCustomEdit.SliderData(1, "上部前後", FaceCustomEdit.TAB.GENERAL),
		new FaceCustomEdit.SliderData(2, "上部上下", FaceCustomEdit.TAB.GENERAL),
		new FaceCustomEdit.SliderData(3, "下部前後", FaceCustomEdit.TAB.GENERAL),
		new FaceCustomEdit.SliderData(4, "下部横幅", FaceCustomEdit.TAB.GENERAL),
		new FaceCustomEdit.SliderData(5, "横幅", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(6, "上下", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(7, "前後", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(8, "角度", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(9, "下部上下", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(10, "先幅", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(11, "先上下", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(12, "先前後", FaceCustomEdit.TAB.CHIN),
		new FaceCustomEdit.SliderData(13, "下部上下", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(14, "下部前後", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(15, "下部幅", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(16, "上部上下", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(17, "上部前後", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(18, "上部幅", FaceCustomEdit.TAB.CHEEK),
		new FaceCustomEdit.SliderData(19, "上下", FaceCustomEdit.TAB.EYEBROW),
		new FaceCustomEdit.SliderData(20, "横位置", FaceCustomEdit.TAB.EYEBROW),
		new FaceCustomEdit.SliderData(21, "角度Z軸", FaceCustomEdit.TAB.EYEBROW),
		new FaceCustomEdit.SliderData(22, "内側形状", FaceCustomEdit.TAB.EYEBROW),
		new FaceCustomEdit.SliderData(23, "外側形状", FaceCustomEdit.TAB.EYEBROW),
		new FaceCustomEdit.SliderData(24, "上下", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(25, "横位置", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(26, "前後", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(27, "横幅", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(28, "縦幅", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(29, "角度Z軸", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(30, "角度Y軸", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(31, "目頭左右位置", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(32, "目尻左右位置", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(33, "目頭上下位置", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(34, "目尻上下位置", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(35, "まぶた形状１", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(36, "まぶた形状２", FaceCustomEdit.TAB.ORBITA),
		new FaceCustomEdit.SliderData(37, "瞳の上下調整", FaceCustomEdit.TAB.EYE),
		new FaceCustomEdit.SliderData(38, "瞳の横幅", FaceCustomEdit.TAB.EYE),
		new FaceCustomEdit.SliderData(39, "瞳の縦幅", FaceCustomEdit.TAB.EYE),
		new FaceCustomEdit.SliderData(40, "全体上下", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(41, "全体前後", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(42, "全体角度X軸", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(43, "全体横幅", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(44, "鼻筋高さ", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(45, "鼻筋横幅", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(46, "鼻筋形状", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(47, "小鼻横幅", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(48, "小鼻上下", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(49, "小鼻前後", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(50, "小鼻角度X軸", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(51, "小鼻角度Z軸", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(52, "鼻先高さ", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(53, "鼻先角度X軸", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(54, "鼻先サイズ", FaceCustomEdit.TAB.NOSE),
		new FaceCustomEdit.SliderData(55, "上下", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(56, "横幅", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(57, "縦幅", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(58, "前後", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(59, "形状上", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(60, "形状下", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(61, "形状口角", FaceCustomEdit.TAB.MOUTH),
		new FaceCustomEdit.SliderData(62, "サイズ", FaceCustomEdit.TAB.EAR),
		new FaceCustomEdit.SliderData(63, "角度Y軸", FaceCustomEdit.TAB.EAR),
		new FaceCustomEdit.SliderData(64, "角度Z軸", FaceCustomEdit.TAB.EAR),
		new FaceCustomEdit.SliderData(65, "上部形状", FaceCustomEdit.TAB.EAR),
		new FaceCustomEdit.SliderData(66, "下部形状", FaceCustomEdit.TAB.EAR)
	};

	// Token: 0x04000DDE RID: 3550
	private static readonly string CustomHighlightTexPath_F = "Custom Point F/Texture/cf_t_face_00_no";

	// Token: 0x04000DDF RID: 3551
	private static readonly string CustomHighlightTexPath_M = "Custom Point M/Texture/cm_t_face_00_no";

	// Token: 0x04000DE0 RID: 3552
	private string CustomHighlightTexPath;

	// Token: 0x04000DE1 RID: 3553
	[SerializeField]
	private EditMode editMode;

	// Token: 0x04000DE2 RID: 3554
	private EditEquipShow equipShow;

	// Token: 0x04000DE3 RID: 3555
	[SerializeField]
	private ToggleButton[] toggles = new ToggleButton[14];

	// Token: 0x04000DE4 RID: 3556
	[SerializeField]
	private GameObject[] tabMains = new GameObject[14];

	// Token: 0x04000DE5 RID: 3557
	[SerializeField]
	private ToggleButton colorCopyToggle;

	// Token: 0x04000DE6 RID: 3558
	[SerializeField]
	private CharaColorCopyHelper colorCopyHelper;

	// Token: 0x04000DE7 RID: 3559
	private InputSliderUI[] sliders;

	// Token: 0x04000DE8 RID: 3560
	private ItemSelectUISets selSets_FaceType;

	// Token: 0x04000DE9 RID: 3561
	private ItemSelectUISets selSets_SkinType;

	// Token: 0x04000DEA RID: 3562
	private ItemSelectUISets selSets_BumpType;

	// Token: 0x04000DEB RID: 3563
	private InputSliderUI bumpRate;

	// Token: 0x04000DEC RID: 3564
	private SwitchUI syncEyeSwitch;

	// Token: 0x04000DED RID: 3565
	private ItemSelectUISets selSets_EyeL;

	// Token: 0x04000DEE RID: 3566
	private ColorChangeButton colorChange_ScleraL;

	// Token: 0x04000DEF RID: 3567
	private ColorChangeButton colorChange_IrisL;

	// Token: 0x04000DF0 RID: 3568
	private InputSliderUI pupilL;

	// Token: 0x04000DF1 RID: 3569
	private InputSliderUI eyeEmissiveL;

	// Token: 0x04000DF2 RID: 3570
	private ItemSelectUISets selSets_EyeR;

	// Token: 0x04000DF3 RID: 3571
	private ColorChangeButton colorChange_ScleraR;

	// Token: 0x04000DF4 RID: 3572
	private ColorChangeButton colorChange_IrisR;

	// Token: 0x04000DF5 RID: 3573
	private InputSliderUI pupilR;

	// Token: 0x04000DF6 RID: 3574
	private InputSliderUI eyeEmissiveR;

	// Token: 0x04000DF7 RID: 3575
	private ItemSelectUISets selSets_EyeHighlight;

	// Token: 0x04000DF8 RID: 3576
	private ColorChangeButton colorChange_EyeHighlight;

	// Token: 0x04000DF9 RID: 3577
	private InputSliderUI metallic_EyeHighlight;

	// Token: 0x04000DFA RID: 3578
	private InputSliderUI smooth_EyeHighlight;

	// Token: 0x04000DFB RID: 3579
	private ItemSelectUISets selSets_Eyebrow;

	// Token: 0x04000DFC RID: 3580
	private ColorChangeButton colorChange_Eyebrow;

	// Token: 0x04000DFD RID: 3581
	private InputSliderUI metallic_Eyebrow;

	// Token: 0x04000DFE RID: 3582
	private InputSliderUI smooth_Eyebrow;

	// Token: 0x04000DFF RID: 3583
	private ItemSelectUISets selSets_Eyelash;

	// Token: 0x04000E00 RID: 3584
	private ColorChangeButton colorChange_Eyelash;

	// Token: 0x04000E01 RID: 3585
	private InputSliderUI metallic_Eyelash;

	// Token: 0x04000E02 RID: 3586
	private InputSliderUI smooth_Eyelash;

	// Token: 0x04000E03 RID: 3587
	private ItemSelectUISets selSets_Mole;

	// Token: 0x04000E04 RID: 3588
	private ColorChangeButton colorChange_Mole;

	// Token: 0x04000E05 RID: 3589
	private ItemSelectUISets selSets_EyeShadow;

	// Token: 0x04000E06 RID: 3590
	private ColorChangeButton colorChange_EyeShadow;

	// Token: 0x04000E07 RID: 3591
	private ItemSelectUISets selSets_Cheek;

	// Token: 0x04000E08 RID: 3592
	private ColorChangeButton colorChange_Cheek;

	// Token: 0x04000E09 RID: 3593
	private ItemSelectUISets selSets_Lip;

	// Token: 0x04000E0A RID: 3594
	private ColorChangeButton colorChange_Lip;

	// Token: 0x04000E0B RID: 3595
	private ItemSelectUISets selSets_Tattoo;

	// Token: 0x04000E0C RID: 3596
	private ColorChangeButton colorChange_Tattoo;

	// Token: 0x04000E0D RID: 3597
	private ItemSelectUISets selSets_Beard;

	// Token: 0x04000E0E RID: 3598
	private ColorChangeButton colorChange_Beard;

	// Token: 0x04000E0F RID: 3599
	private Human human;

	// Token: 0x04000E10 RID: 3600
	private int nowTab = -1;

	// Token: 0x04000E11 RID: 3601
	private float customMatAlpha = 1f;

	// Token: 0x04000E12 RID: 3602
	private int onCursorNo = -1;

	// Token: 0x04000E13 RID: 3603
	private int highlightNo = -1;

	// Token: 0x04000E14 RID: 3604
	private bool showHighlight;

	// Token: 0x04000E15 RID: 3605
	private Texture highlightTex;

	// Token: 0x04000E16 RID: 3606
	private bool invoke = true;

	// Token: 0x020001F5 RID: 501
	private enum TAB
	{
		// Token: 0x04000E18 RID: 3608
		GENERAL,
		// Token: 0x04000E19 RID: 3609
		EAR,
		// Token: 0x04000E1A RID: 3610
		EYEBROW,
		// Token: 0x04000E1B RID: 3611
		EYELASH,
		// Token: 0x04000E1C RID: 3612
		ORBITA,
		// Token: 0x04000E1D RID: 3613
		EYE,
		// Token: 0x04000E1E RID: 3614
		NOSE,
		// Token: 0x04000E1F RID: 3615
		CHEEK,
		// Token: 0x04000E20 RID: 3616
		MOUTH,
		// Token: 0x04000E21 RID: 3617
		CHIN,
		// Token: 0x04000E22 RID: 3618
		MOLE,
		// Token: 0x04000E23 RID: 3619
		MAKEUP,
		// Token: 0x04000E24 RID: 3620
		TATTOO,
		// Token: 0x04000E25 RID: 3621
		BEARD,
		// Token: 0x04000E26 RID: 3622
		NUM
	}

	// Token: 0x020001F6 RID: 502
	private class SliderData
	{
		// Token: 0x06000DA3 RID: 3491 RVA: 0x00053B78 File Offset: 0x00051D78
		public SliderData(int id, string name, FaceCustomEdit.TAB type)
		{
			this.id = id;
			this.name = name;
			this.type = type;
		}

		// Token: 0x04000E27 RID: 3623
		public int id;

		// Token: 0x04000E28 RID: 3624
		public string name;

		// Token: 0x04000E29 RID: 3625
		public FaceCustomEdit.TAB type;
	}
}
